package models_esports

type LOLStatusID int

// LolTournament 英雄联盟 锦标赛
type LolTournament struct {
	ID         int         `json:"id" gorm:"primaryKey;comment:赛事id"`
	NameEn     string      `json:"name_en" gorm:"type:varchar(255);comment:英文名称"`
	NameZh     string      `json:"name_zh" gorm:"type:varchar(255);comment:中文名称"`
	AbbrEn     string      `json:"abbr_en" gorm:"type:varchar(255);comment:英文简称"`
	AbbrZh     string      `json:"abbr_zh" gorm:"type:varchar(255);comment:中文简称"`
	StatusID   LOLStatusID `json:"status_id" gorm:"type:int(11);comment:状态，详见状态码->比赛状态"`
	Logo       string      `json:"logo" gorm:"type:varchar(255);comment:赛事logo"`
	Cover      string      `json:"cover" gorm:"type:varchar(255);comment:封面"`
	StartTime  int         `json:"start_time" gorm:"type:int(11);comment:开始时间"`
	EndTime    int         `json:"end_time" gorm:"type:int(11);comment:结束时间"`
	CityName   string      `json:"city_name" gorm:"type:varchar(255);comment:举办地 中文名称"`
	CityNameEn string      `json:"city_name_en" gorm:"type:varchar(255);comment:举办地 英文名称"`
	Type       int         `json:"type" gorm:"type:int(11);comment:赛事类型，1.全球性、2.五大联赛、3.地区联赛、4.其他赛事、0.未知"`
	PricePool  string      `json:"price_pool"  gorm:"type:varchar(255);comment:奖金池"`
	UpdatedAt  int         `json:"updated_at" gorm:"type:int(11);comment:更新时间"`
}

func (s LOLStatusID) String() string {
	//0	比赛异常，说明：暂未判断具体原因的异常比赛，建议隐藏处理
	status := map[int]string{
		1:  "未开赛",
		2:  "进行中",
		3:  "完场",
		11: "中断",
		12: "取消",
		13: "延期",
		14: "腰斩",
		15: "待定",
	}
	str, ok := status[int(s)]
	if !ok {
		return ""
	}
	return str
}
